package com.ruoyi.video.mapper;

import com.ruoyi.video.domain.BusVideoInfo;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface VideoInfoMapper {

    /**
     * 查询视频信息
     *
     * @param videoId 视频ID
     * @return 视频信息
     */
    public BusVideoInfo selectVideoById(Long videoId);

    /**
     * 查询视频列表
     *
     * @param videoIdList 视频ID列表
     * @return 视频列表
     */
    public List<BusVideoInfo> selectVideoByIdList(@Param("videoIdList") List<Long> videoIdList);

    /**
     * 查询视频列表
     *
     * @param video 视频信息
     * @return 视频集合
     */
    public List<BusVideoInfo> selectVideoList(BusVideoInfo video);

    /**
     * 分组查询视频列表前5名
     *
     * @return 视频集合
     */
    List<BusVideoInfo> selectVideoListGroupByTypeLimit5();

    /**
     * 新增视频
     *
     * @param video 视频信息
     * @return 结果
     */
    public int insertVideo(BusVideoInfo video);

    /**
     * 修改视频
     *
     * @param video 视频信息
     * @return 结果
     */
    public int updateVideo(BusVideoInfo video);

    /**
     * 批量删除视频
     *
     * @param videoId 视频ID
     * @return 结果
     */
    public int deleteVideoById(Long videoId);

    /**
     * 批量删除视频信息
     *
     * @param videoIds 需要删除的视频ID
     * @return 结果
     */
    public int deleteVideoByIds(Long[] videoIds);


}
